00001 /////////////////////////////////////////////////////////////////////////////// 00002 /// @file sha1.h 00003 /// 00004 /// @brief sha1 (fips-180-1 standard) secure hash header 00005 /// 00006 /// @author Lightning 00007 /// 00008 /// This file is the intellectual property of Novus Delta, LLC.. Usage of the 00009 /// contents of this file is subject to the Destiny3D Member License which 00010 /// can be found at http://www.destiny3d.com. Any other usage is prohibited. 00011 /// 00012 /// This file is distributed "AS IS" without warranty of any kind. Novus 00013 /// Delta, LLC. does not guarantee the fitness of the contents of this file 00014 /// for any particular purpose. 00015 /// 00016 /// Copyright (C) 2001-2004 Novus Delta, LLC. All Rights Reserved. 00017 /// 00018 /// <hr> 00019 /// Change History 00020 /// <hr> 00021 /// 00022 /// @date Sep 2004 00023 /// @author Lightning 00024 /// @remarks Creation 00025 /// 00026 /////////////////////////////////////////////////////////////////////////////// 00027 00028 #ifndef DE_SHA1_H 00029 #define DE_SHA1_H 00030 00031 //define the sha1 functions and data 00032 typedef struct SHA1Instance 00033 { 00034 unsigned long TotalLength; //total length of the data (4GB of data is too much to hash in a game) 00035 unsigned char Buffer[64]; //last 64 bytes used during the hash 00036 unsigned long CurrentHash[5]; //current hash as it stands 00037 } SHA1Instance; 00038 00039 void SHA1Init(SHA1Instance *Inst); 00040 void SHA1Process(SHA1Instance *Inst, unsigned char *Buffer, long Length); 00041 void SHA1Finish(SHA1Instance *Inst, unsigned char *Hash, long HashLen); 00042 00043 #endif
1.3-rc3